﻿

// 命名空间定义，表示该类属于CompositePattern模块
namespace CompositePattern;

// 定义一个抽象类AbstractDomain，用于表示领域模型的基础结构
public abstract class AbstractDomain
{
    // 定义一个必需的字符串属性Name，用于存储领域的名称
    public required string Name { get; set; }

    // 定义一个双精度浮点数属性Percent，用于存储领域的百分比
    public double Percent { get; set; }

    // 定义一个抽象方法Commission，接受一个双精度浮点数total作为参数
    // 该方法用于计算并处理领域的佣金，具体实现由子类提供
    public abstract void Commission(double total);
}
